package bean;

import java.io.Serializable;
import java.util.HashSet;
import java.util.LinkedList;
import java.util.List;
import java.util.Set;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.OneToMany;
import javax.persistence.Table;

@Entity
@Table(name="clientes")
public class Cliente implements Serializable{
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	private Integer id;
	private String nombre;
	private String sexo;
	private int edad;
	private int estado;
	
//	private List<Telefono> telefonos;
	private List<Telefono> telefonos = new LinkedList<Telefono>();

	
	public Cliente(){
//		setTelefonos(new LinkedList<Telefono>());
	}
	@Id
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	@Column (name = "nombre", nullable = false, length = 50)
	public String getNombre() {
		return nombre;
	}
	public void setNombre(String nombre) {
		this.nombre = nombre;
	}
	public String getSexo() {
		return sexo;
	}
	public void setSexo(String sexo) {
		this.sexo = sexo;
	}
	public int getEdad() {
		return edad;
	}
	public void setEdad(int edad) {
		this.edad = edad;
	}
	public int getEstado() {
		return estado;
	}
	public void setEstado(int estado) {
		this.estado = estado;
	}

	@OneToMany(cascade=CascadeType.ALL)
	@JoinColumn(name="id")
	
	public List<Telefono> getTelefonos() {
		return telefonos;
	}
	public void setTelefonos(List<Telefono> telefonos) {
		this.telefonos = telefonos;
	}
	public void agregarTelefono(String numero, String area) {
		// TODO Auto-generated method stub
		Telefono t = new Telefono();
		
			TelefonoID tid = new TelefonoID();
			tid.setArea(area);
			tid.setNumero(numero);
		t.setUk_telefono(tid);
		this.telefonos.add(t);
		
	}

	public void agregarTelefonos(Telefono t) {
		// TODO Auto-generated method stub
		telefonos.add(t);
		
	}
}
